Barcode identification of wireless terminals

ABSTRACT

When a wireless connection is to be formed between a PDA  1,  for example, and a printer  11,  for example, the user of the PDA  1  causes it to read a code  13,  e.g., a barcode, from the printer  11  so that the PDA  1  can identify the printer  11  in a list  20  of discovered neighbouring devices and, consequently, send appropriate connection set up signals to the printer  11  rather than inadvertently to some other device.

FIELD OF THE INVENTION

[0001] The present invention relates to wireless communication.

BACKGROUND TO THE INVENTION

[0002] Devices implementing the Bluetooth standard have recently begunto appear. Bluetooth provides a common standard by which devices, suchas PDAs (Personal Digital Assistants), mobile phones, printers, etc.,can communicate with each other wirelessly. Bluetooth uses radio signalsin the 2.4 GHz Industrial-Scientific-Medical band.

[0003] Bluetooth has a weakness in that problems arise in discovering anintended recipient for a communication in a crowded environment, such asa conference where many people are exchanging electronic business cardsor on a commuter train where many people have Bluetooth connectionsbetween mobile phone or music playing devices and ear phones. ABluetooth device must perform a time-consuming discovery operation whichwill actually locate every Bluetooth device in the local environment.The user is then provided with a bewildering list of devices from whichhe must select the correct device.

[0004] It is an aim of the present invention to solve theafore-mentioned problem of Bluetooth and similar systems.

SUMMARY OF THE INVENTION

[0005] According to the present invention, there is provided a method ofestablishing a wireless connection between two devices, the methodcomprising storing in a first device a list of ids of connectabledevices, using the first device to read an external code from a seconddevice, selecting an id from said list in dependence on said read codeand sending connection establishing signals to the second device inresponse to said selection.

[0006] According to the present invention, there is also provided adevice including code reading means, wireless communication means andprocessing means programmed to cause the device to perform a methodaccording to the present invention.

[0007] According to the present invention, there is further provided adevice including wireless communication means, processing means forcontrolling the wireless communication means for wireless networkingwith other devices, a memory storing a device id and an external codecorresponding to said device id.

[0008] The code is conveniently an optical barcode. It should beappreciated that the term “code” used herein does not exclude markingsthat are intelligible to humans. For instance, a human can easily learnto read a written representation of Baudot code, which was of coursedesigned for machine-to-machine communication.

[0009] The code need not be permanently readable. For instance, the codemay be a pattern produced on an LCD which would disappear in the eventof the device bearing it being switched off or becoming inoperative dueto a failure.

[0010] Advantageously, the code includes a device type identifying part.This can be used for automatically configuring the first device.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011]FIG. 1 is a block diagram of a device according to the presentinvention;

[0012]FIG. 2 illustrates a piconet;

[0013]FIG. 3 shows the display of the device of FIG. 1 during connectionto another device;

[0014]FIG. 4 is a flowchart illustrating the device of FIG. 1 operatingaccording to the present invention; and

[0015]FIG. 5 is a flowchart illustrating the operation of a seconddevice according to the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

[0016] Embodiments of the present invention will now be described, byway of example, with reference to the accompanying drawings.

[0017] Referring to FIG. 1, an electronic device 1, which may be a PDA,a mobile phone, or other device, comprises a processor 2, RAM 3, ROM 4,display circuitry 5 including a display 9, user input circuitry 6, an rfsubsystem 7 and a barcode reader subsystem 8 interconnected by a bus 10.The device 1 may have additional circuits and mechanical elements (notshown) which are required for its particular function, e.g. signalprocessing in the case of a mobile phone and a printing engine in thecase of a printer.

[0018] The ROM 4 contains Bluetooth routines for controllingcommunication using the rf subsystem 7 which are accessible to programsbeing run by the processor 2 via an API.

[0019] The rf subsystem 7 comprises transceiver circuitry, including alocal oscillator, and a controller for controlling the transceivercircuitry in response to commands from the processor 2. The transceiveris adapted for frequency hopping transmission and reception according tothe Bluetooth specification.

[0020] Referring to FIG. 2, the device 1 can connect with otherBluetooth enabled devices, in this case a printer 11 and a mobile phone12 to form a “piconet”. The printer 11, the mobile phone 12 and thedevice 1 have respective barcodes 13, 14, 15 on their outer surface. Thebar codes 13, 14, 15 represent the Bluetooth Device Addresses for theprinter 11, the mobile phone 12 respectively and the device 1.

[0021] Bluetooth devices perform a discovery operation to locate otherBluetooth devices in their neighbourhood and add discovered devices toan internally stored list.

[0022] Referring to FIG. 3, when the user of the device 1, which is aPDA in this case, wishes to print using the printer 11, the user ispresented by the PDA with a list 20 of the Bluetooth Device Addresses ofdiscovered Bluetooth devices on the display 9. If the user knows theBluetooth Device Addresses of the printer 11, the user can manuallyselect the appropriate entry in the list 20 so that the device 1 canform a piconet with the printer 11.

[0023] Referring to FIG. 4, if the user does not know the BluetoothDevice Address of the printer 11, the user can approach the printer 11and using software in the ROM 4 activate the barcode reader subsystem 8to read the barcode 13 from the printer 11 (step s1). The device'sprocessor 2 then searches the members of the list 20 for a match (stepss2, s3 and s4) and, if one is found (step s2), sets up a piconetconnection with the device identified by the match, i.e. the printer 11(step s5) by sending connection establishing signals to the printer 11.If a match is not found in the list, an error is signalled to the user(step s6).

[0024] Barcodes have been given in the foregoing as an example ofmachine-readable indicia. It will be appreciated that other forms ofoptically readable codes or symbols and magnetic codes could be used.

[0025] It will be appreciated that the list 20 need not be displayed andthat codes may be read from devices whenever a connection is required tobe established.

[0026] In a second embodiment, the barcode is extended to include adevice id code, comprising a type part and a model part. For instance,the barcode 13 on the printer 11 would comprise the printer's BluetoothDevice Address and a code identifying it as a printer of “Thingamyjig2000” type. The code identifying the device type can then be used by theconnecting device 1 to configure itself, e.g. selecting the appropriatedriver for the printer being connected to. Another example, would be tostart appropriate processing software. For example, a code identifying adevice as a video camera would cause the device reading the code tostart video display software in preparation for receiving video signalsfrom the camera.

[0027] Referring to FIG. 5, the process of finding the Bluetooth DeviceAddress from the barcode in the list 20 (steps s1 to s6) are the same asin the previous embodiment. However, if the Bluetooth Device Address isfound in the list 20, the connecting device's processor 2 searches(steps s7, s8 and s9) an internally stored list of device type codes fora match with that from the barcode. If no match is found (step s8) theprocess is exited. However, if a match is found (step s7), the processor2 searches (steps s10, s11 and s12) a list of known models of devices ofthe identified type. If a match is found (step s10) or no match is found(step s11), the process moves onto a configuration step (step s13). Inthe configuration step, the processor 2 identifies any device type and,if relevant, model specific actions to be performed, e.g. driverselection or application program execution, and performs these actions.Following the start of step s13, the processor 2 proceeds to set up thepiconet connection (step s14).

[0028] It will be appreciated that many modifications may be made to theembodiments described above.

1. A method of establishing a wireless connection between two devices,the method comprising:— storing in a first device a list of ids ofconnectable devices; using the first device to read an external codefrom a second device; selecting an id from said list in dependence onsaid read code; and sending connection establishing signals to thesecond device in response to said selection.
 2. A method according toclaim 1, wherein said code is an optical barcode.
 3. A method accordingto claim 1 or 2, wherein said code includes a device type identifyingpart.
 4. A method according to claim 3, including automaticallyconfiguring the first device in dependence on said device typeidentifying part.
 5. A device including code reading means, wirelesscommunication means, a memory for storing a list of ids of connectabledevices and processing means programmed to operate the code readingmeans to obtain a code, select an id from a list of connectable deviceids in said memory in dependence on said read code and operate thewireless communication means to send connection establishing signals toanother device in response to said selection.
 6. A device according toclaim 5, wherein the code reading means comprises barcode reading means.7. A device including wireless communication means, processing means forcontrolling the wireless communication means for wireless networkingwith other devices, a memory storing a device id and an external codecorresponding to said device id.
 8. A device according to claim 7,wherein the externally accessible code is an optically readable barcode.9. A device according to claim 7 or 8, said code includes a device typeidentifying part.